package com.gkzf.ai.module.crm.controller.app.product.vo;

import com.alibaba.excel.annotation.ExcelProperty;
import com.gkzf.ai.framework.common.pojo.PageParam;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;

import java.math.BigDecimal;

@Schema(description = "管理后台 - CRM 产品分页 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class ProductPageReqVO extends PageParam {


    @Schema(description = "最大限额", requiredMode = Schema.RequiredMode.REQUIRED, example = "90000")
    @ExcelProperty("最大限额")
    private BigDecimal maxQuota;

    @Schema(description = "最小限额", requiredMode = Schema.RequiredMode.REQUIRED, example = "0")
    @ExcelProperty("最大限额")
    private BigDecimal minQuota;

    @Schema(description = "最大利率(%)", example = "0.34")
    private String maxInterestRate;

    @Schema(description = "最小利率(%)", example = "2.34")
    private String minInterestRate;

    @Schema(description = "最大贷款期限(月)", example = "60")
    private Integer maxLoansDeadline;

    @Schema(description = "最小贷款期限(月)", example = "1")
    private Integer minLoansDeadline;

    @Schema(description = "排序字段", example = "{processing_cycle：办理周期  loans_deadline：贷款期限  max_quota：最高可贷额度}")
    private String sortField;

    @Schema(description = "排序方式", example = "DESC 降序  ASC 正序")
    private String sortMethod;

    @Schema(description = "贷款类型 0：信用贷  1：抵押贷")
    private String loanType;

    @Schema(description = "是否精选推送推荐 默认0不推荐  1推荐")
    private Integer isRecommendation;
}
